﻿using System;
using System.Collections.Generic;

using SWE4.Data.EmbeddedSensorCloud.DTO.Request;
using SWE4.Data.EmbeddedSensorCloud.DTO.Response;

namespace EmbeddedSensorCloud.Plugin.MicroERP
{
    public interface IInvoiceDAO
    {
        uint Create(InvoiceRequestModel invoice);

        IEnumerable<InvoiceResponseModel> Read(string customerQuery, DateTime? minDate, DateTime? maxDate, decimal? minSum, decimal? maxSum);
        
        InvoiceResponseModel Read(uint invoiceId);

        void Update(InvoiceRequestModel invoice, uint invoiceId);

        void Delete(uint invoiceId);
    }
}
